<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>OpenMesh: OpenMesh::Kernel_OSG::oPropertyT&lt; GeoProperty &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="logo_align.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="rwth_vci_rgb.jpg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">OpenMesh
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a02725.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="a02722.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">OpenMesh::Kernel_OSG::oPropertyT&lt; GeoProperty &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Property adaptor for OpenSG GeoProperties.  
 <a href="a02725.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00632_source.html">OpenMesh/Tools/Kernel_OSG/PropertyT.hh</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for OpenMesh::Kernel_OSG::oPropertyT&lt; GeoProperty &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="a02724.png" border="0" usemap="#OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_inherit__map" id="OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_inherit__map">
<area shape="rect" id="node3" href="a02729.html" title="Adaptor for osg::GeoIndicesUI32. " alt="" coords="17,169,184,225"/>
<area shape="rect" id="node2" href="a02497.html" title="Abstract class defining the basic interface of a dynamic property. " alt="" coords="15,5,187,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for OpenMesh::Kernel_OSG::oPropertyT&lt; GeoProperty &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="a02723.png" border="0" usemap="#OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_coll__map" id="OpenMesh_1_1Kernel__OSG_1_1oPropertyT_3_01GeoProperty_01_4_coll__map">
<area shape="rect" id="node2" href="a02497.html" title="Abstract class defining the basic interface of a dynamic property. " alt="" coords="15,5,187,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:acbc1653e06fdb802c666acc919fc79b1"><td class="memItemLeft" align="right" valign="top"><a id="acbc1653e06fdb802c666acc919fc79b1"></a>
typedef GeoProperty&#160;</td><td class="memItemRight" valign="bottom"><b>property_t</b></td></tr>
<tr class="separator:acbc1653e06fdb802c666acc919fc79b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51fd217fd82f1bcea7351ed6ca812ea6"><td class="memItemLeft" align="right" valign="top"><a id="a51fd217fd82f1bcea7351ed6ca812ea6"></a>
typedef property_t::PtrType&#160;</td><td class="memItemRight" valign="bottom"><b>property_ptr_t</b></td></tr>
<tr class="separator:a51fd217fd82f1bcea7351ed6ca812ea6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ac8ef38a920b2555a25241e5acc6d7e"><td class="memItemLeft" align="right" valign="top"><a id="a0ac8ef38a920b2555a25241e5acc6d7e"></a>
typedef property_t::StoredFieldType&#160;</td><td class="memItemRight" valign="bottom"><b>field_t</b></td></tr>
<tr class="separator:a0ac8ef38a920b2555a25241e5acc6d7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00d73e914c72898b07630e5d54868e1d"><td class="memItemLeft" align="right" valign="top"><a id="a00d73e914c72898b07630e5d54868e1d"></a>
typedef field_t::StoredType&#160;</td><td class="memItemRight" valign="bottom"><b>element_t</b></td></tr>
<tr class="separator:a00d73e914c72898b07630e5d54868e1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ce9172ca80aabd40d7b93a9c68d5766"><td class="memItemLeft" align="right" valign="top"><a id="a1ce9172ca80aabd40d7b93a9c68d5766"></a>
typedef field_t::StoredType&#160;</td><td class="memItemRight" valign="bottom"><b>value_type</b></td></tr>
<tr class="separator:a1ce9172ca80aabd40d7b93a9c68d5766"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a6358ad85c37b8e374bbc5bbde9660fda"><td class="memItemLeft" align="right" valign="top"><a id="a6358ad85c37b8e374bbc5bbde9660fda"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>oPropertyT</b> (property_ptr_t _geo_prop, const std::string &amp;_name=&quot;&lt;unknown&gt;&quot;)</td></tr>
<tr class="separator:a6358ad85c37b8e374bbc5bbde9660fda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a797dfbe8202e7f972ce077863e9c38b6"><td class="memItemLeft" align="right" valign="top"><a id="a797dfbe8202e7f972ce077863e9c38b6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>oPropertyT</b> (const std::string &amp;_name=&quot;&lt;unknown&gt;&quot;)</td></tr>
<tr class="separator:a797dfbe8202e7f972ce077863e9c38b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9ffd31fa982c7b7c4988400e7ee9835"><td class="memItemLeft" align="right" valign="top"><a id="ac9ffd31fa982c7b7c4988400e7ee9835"></a>
<a class="el" href="a02725.html">oPropertyT</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="a02725.html">oPropertyT</a> &amp;_rhs)</td></tr>
<tr class="separator:ac9ffd31fa982c7b7c4988400e7ee9835"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76d932e13622eb8a87cfc13058538b53"><td class="memItemLeft" align="right" valign="top"><a id="a76d932e13622eb8a87cfc13058538b53"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#a76d932e13622eb8a87cfc13058538b53">reserve</a> (size_t _n)</td></tr>
<tr class="memdesc:a76d932e13622eb8a87cfc13058538b53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reserve memory for n elements. <br /></td></tr>
<tr class="separator:a76d932e13622eb8a87cfc13058538b53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91c309c4854fb5181326f9747478b5e0"><td class="memItemLeft" align="right" valign="top"><a id="a91c309c4854fb5181326f9747478b5e0"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#a91c309c4854fb5181326f9747478b5e0">resize</a> (size_t _n)</td></tr>
<tr class="memdesc:a91c309c4854fb5181326f9747478b5e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resize storage to hold n elements. <br /></td></tr>
<tr class="separator:a91c309c4854fb5181326f9747478b5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab44f9a631e21f158844394e7a14f8341"><td class="memItemLeft" align="right" valign="top"><a id="ab44f9a631e21f158844394e7a14f8341"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#ab44f9a631e21f158844394e7a14f8341">push_back</a> ()</td></tr>
<tr class="memdesc:ab44f9a631e21f158844394e7a14f8341"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extend the number of elements by one. <br /></td></tr>
<tr class="separator:ab44f9a631e21f158844394e7a14f8341"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac098080990152ff86b1cd445dab4eaa8"><td class="memItemLeft" align="right" valign="top"><a id="ac098080990152ff86b1cd445dab4eaa8"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#ac098080990152ff86b1cd445dab4eaa8">swap</a> (size_t _i0, size_t _i1)</td></tr>
<tr class="memdesc:ac098080990152ff86b1cd445dab4eaa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Let two elements swap their storage place. <br /></td></tr>
<tr class="separator:ac098080990152ff86b1cd445dab4eaa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76070a181626945bfb31afe7611ce960"><td class="memItemLeft" align="right" valign="top"><a id="a76070a181626945bfb31afe7611ce960"></a>
virtual <a class="el" href="a02725.html">oPropertyT</a>&lt; property_t &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#a76070a181626945bfb31afe7611ce960">clone</a> () const</td></tr>
<tr class="memdesc:a76070a181626945bfb31afe7611ce960"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a deep copy of self. <br /></td></tr>
<tr class="separator:a76070a181626945bfb31afe7611ce960"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0e7839eeeba0528390ccbe9315dd153"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#ac0e7839eeeba0528390ccbe9315dd153">set_persistent</a> (bool _yn)</td></tr>
<tr class="memdesc:ac0e7839eeeba0528390ccbe9315dd153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable persistency.  <a href="#ac0e7839eeeba0528390ccbe9315dd153">More...</a><br /></td></tr>
<tr class="separator:ac0e7839eeeba0528390ccbe9315dd153"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f342209a0d6d043582651b161a297e4"><td class="memItemLeft" align="right" valign="top"><a id="a1f342209a0d6d043582651b161a297e4"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#a1f342209a0d6d043582651b161a297e4">n_elements</a> () const</td></tr>
<tr class="memdesc:a1f342209a0d6d043582651b161a297e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of elements in property. <br /></td></tr>
<tr class="separator:a1f342209a0d6d043582651b161a297e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad304097b132a114a207881af1b50feaf"><td class="memItemLeft" align="right" valign="top"><a id="ad304097b132a114a207881af1b50feaf"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#ad304097b132a114a207881af1b50feaf">element_size</a> () const</td></tr>
<tr class="memdesc:ad304097b132a114a207881af1b50feaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of one element in bytes or UnknownSize if not known. <br /></td></tr>
<tr class="separator:ad304097b132a114a207881af1b50feaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b44d27b7e7d2e48b4be2f3b5bbeef18"><td class="memItemLeft" align="right" valign="top"><a id="a0b44d27b7e7d2e48b4be2f3b5bbeef18"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#a0b44d27b7e7d2e48b4be2f3b5bbeef18">store</a> (std::ostream &amp;_ostr, bool _swap) const</td></tr>
<tr class="memdesc:a0b44d27b7e7d2e48b4be2f3b5bbeef18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store self as one binary block. <br /></td></tr>
<tr class="separator:a0b44d27b7e7d2e48b4be2f3b5bbeef18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af263bcb96eb989660cd802eaf93cd028"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#af263bcb96eb989660cd802eaf93cd028">restore</a> (std::istream &amp;_istr, bool _swap)</td></tr>
<tr class="memdesc:af263bcb96eb989660cd802eaf93cd028"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore self from a binary block.  <a href="#af263bcb96eb989660cd802eaf93cd028">More...</a><br /></td></tr>
<tr class="separator:af263bcb96eb989660cd802eaf93cd028"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa63de2e07f86498cc680035833773b8"><td class="memItemLeft" align="right" valign="top"><a id="aaa63de2e07f86498cc680035833773b8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02725.html#aaa63de2e07f86498cc680035833773b8">clear</a> (void)</td></tr>
<tr class="memdesc:aaa63de2e07f86498cc680035833773b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all elements and free memory. <br /></td></tr>
<tr class="separator:aaa63de2e07f86498cc680035833773b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff8c7fdc5b332dd1503655f6dae165d2"><td class="memItemLeft" align="right" valign="top"><a id="aff8c7fdc5b332dd1503655f6dae165d2"></a>
property_ptr_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>osg_ptr</b> ()</td></tr>
<tr class="separator:aff8c7fdc5b332dd1503655f6dae165d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1640369f1d2018e57f33926ce4ca6057"><td class="memItemLeft" align="right" valign="top"><a id="a1640369f1d2018e57f33926ce4ca6057"></a>
const property_ptr_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>osg_ptr</b> () const</td></tr>
<tr class="separator:a1640369f1d2018e57f33926ce4ca6057"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a694029f514b6d2dd7574b83af49aa417"><td class="memItemLeft" align="right" valign="top"><a id="a694029f514b6d2dd7574b83af49aa417"></a>
const element_t *&#160;</td><td class="memItemRight" valign="bottom"><b>data</b> () const</td></tr>
<tr class="separator:a694029f514b6d2dd7574b83af49aa417"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7243f520e92997bc806db84654870525"><td class="memItemLeft" align="right" valign="top"><a id="a7243f520e92997bc806db84654870525"></a>
element_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (size_t idx)</td></tr>
<tr class="separator:a7243f520e92997bc806db84654870525"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f3063f1e49bae29cdc74920a60e34ff"><td class="memItemLeft" align="right" valign="top"><a id="a4f3063f1e49bae29cdc74920a60e34ff"></a>
const element_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (size_t idx) const</td></tr>
<tr class="separator:a4f3063f1e49bae29cdc74920a60e34ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_a02497"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a02497')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="a02497.html">OpenMesh::BaseProperty</a></td></tr>
<tr class="memitem:a2cb84fe2bfd412c79ecf76ea95b857e2 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a2cb84fe2bfd412c79ecf76ea95b857e2">BaseProperty</a> (const std::string &amp;_name=&quot;&lt;unknown&gt;&quot;, const std::string &amp;_internal_type_name=&quot;&lt;unknown&gt;&quot;)</td></tr>
<tr class="memdesc:a2cb84fe2bfd412c79ecf76ea95b857e2 inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="a02497.html#a2cb84fe2bfd412c79ecf76ea95b857e2">More...</a><br /></td></tr>
<tr class="separator:a2cb84fe2bfd412c79ecf76ea95b857e2 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9301f986c88572a20649f8743bfac6ac inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a9301f986c88572a20649f8743bfac6ac"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a9301f986c88572a20649f8743bfac6ac">BaseProperty</a> (const <a class="el" href="a02497.html">BaseProperty</a> &amp;_rhs)</td></tr>
<tr class="memdesc:a9301f986c88572a20649f8743bfac6ac inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:a9301f986c88572a20649f8743bfac6ac inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3c0dbc83c42199de5722a5812c5a12b inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="aa3c0dbc83c42199de5722a5812c5a12b"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#aa3c0dbc83c42199de5722a5812c5a12b">~BaseProperty</a> ()</td></tr>
<tr class="memdesc:aa3c0dbc83c42199de5722a5812c5a12b inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:aa3c0dbc83c42199de5722a5812c5a12b inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac5035f4fa788d640f96d80ee082cb87 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="aac5035f4fa788d640f96d80ee082cb87"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#aac5035f4fa788d640f96d80ee082cb87">copy</a> (size_t _io, size_t _i1)=0</td></tr>
<tr class="memdesc:aac5035f4fa788d640f96d80ee082cb87 inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy one element to another. <br /></td></tr>
<tr class="separator:aac5035f4fa788d640f96d80ee082cb87 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a529c57d1514c7c0370f1c742d166bf9c inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a529c57d1514c7c0370f1c742d166bf9c"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a529c57d1514c7c0370f1c742d166bf9c">name</a> () const</td></tr>
<tr class="memdesc:a529c57d1514c7c0370f1c742d166bf9c inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the name of the property. <br /></td></tr>
<tr class="separator:a529c57d1514c7c0370f1c742d166bf9c inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43ce9ccb954afe566e271c7f99a03285 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a43ce9ccb954afe566e271c7f99a03285"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a43ce9ccb954afe566e271c7f99a03285">internal_type_name</a> () const</td></tr>
<tr class="memdesc:a43ce9ccb954afe566e271c7f99a03285 inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return internal type name of the property for type safe casting alternative to runtime information. <br /></td></tr>
<tr class="separator:a43ce9ccb954afe566e271c7f99a03285 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9145372391f82daf963fcd2b13d32515 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a9145372391f82daf963fcd2b13d32515"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>stats</b> (std::ostream &amp;_ostr) const</td></tr>
<tr class="separator:a9145372391f82daf963fcd2b13d32515 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6221bd81f75bc0dfd10c934fb25467eb inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a6221bd81f75bc0dfd10c934fb25467eb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a6221bd81f75bc0dfd10c934fb25467eb">persistent</a> (void) const</td></tr>
<tr class="memdesc:a6221bd81f75bc0dfd10c934fb25467eb inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the persistent flag is enabled else false. <br /></td></tr>
<tr class="separator:a6221bd81f75bc0dfd10c934fb25467eb inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bc453b15806c2ab78e82418212cb939 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a3bc453b15806c2ab78e82418212cb939"></a>
virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a3bc453b15806c2ab78e82418212cb939">size_of</a> () const</td></tr>
<tr class="memdesc:a3bc453b15806c2ab78e82418212cb939 inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return size of property in bytes. <br /></td></tr>
<tr class="separator:a3bc453b15806c2ab78e82418212cb939 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac13fe04403a9062dff6988b5aadee639 inherit pub_methods_a02497"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#ac13fe04403a9062dff6988b5aadee639">size_of</a> (size_t _n_elem) const</td></tr>
<tr class="memdesc:ac13fe04403a9062dff6988b5aadee639 inherit pub_methods_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Estimated size of property if it has _n_elem elements.  <a href="a02497.html#ac13fe04403a9062dff6988b5aadee639">More...</a><br /></td></tr>
<tr class="separator:ac13fe04403a9062dff6988b5aadee639 inherit pub_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a6ca288c2e73f0aefcfdd6b2bd2c9b621"><td class="memItemLeft" align="right" valign="top"><a id="a6ca288c2e73f0aefcfdd6b2bd2c9b621"></a>
property_ptr_t&#160;</td><td class="memItemRight" valign="bottom"><b>data_</b></td></tr>
<tr class="separator:a6ca288c2e73f0aefcfdd6b2bd2c9b621"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_attribs_a02497"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_a02497')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="a02497.html">OpenMesh::BaseProperty</a></td></tr>
<tr class="memitem:a3dbccc1d0ac8f9a0ba27c46f2fe58414 inherit pub_static_attribs_a02497"><td class="memItemLeft" align="right" valign="top"><a id="a3dbccc1d0ac8f9a0ba27c46f2fe58414"></a>
static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a02497.html#a3dbccc1d0ac8f9a0ba27c46f2fe58414">UnknownSize</a> = size_t(-1)</td></tr>
<tr class="memdesc:a3dbccc1d0ac8f9a0ba27c46f2fe58414 inherit pub_static_attribs_a02497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates an error when a size is returned by a member. <br /></td></tr>
<tr class="separator:a3dbccc1d0ac8f9a0ba27c46f2fe58414 inherit pub_static_attribs_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_a02497"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_a02497')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="a02497.html">OpenMesh::BaseProperty</a></td></tr>
<tr class="memitem:ace9460aa7a6d1b044661a25dea831259 inherit pro_methods_a02497"><td class="memTemplParams" colspan="2"><a id="ace9460aa7a6d1b044661a25dea831259"></a>
template&lt;typename T &gt; </td></tr>
<tr class="memitem:ace9460aa7a6d1b044661a25dea831259 inherit pro_methods_a02497"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>check_and_set_persistent</b> (bool _yn)</td></tr>
<tr class="separator:ace9460aa7a6d1b044661a25dea831259 inherit pro_methods_a02497"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename GeoProperty&gt;<br />
class OpenMesh::Kernel_OSG::oPropertyT&lt; GeoProperty &gt;</h3>

<p>Property adaptor for OpenSG GeoProperties. </p>
<p>This class bridges the interfaces of OpenMesh properties and OpenSG GeoProperties. The PropertyKernelT uses these adaptors to add all necessary property functions to the kernel, while the <a class="el" href="a02709.html" title="This class adds the standard properties to the mesh type. ">AttribKernelT</a> extends the kernel with the standard properites. Finally the <a class="el" href="a02705.html" title="Mesh kernel using arrays for mesh item storage. ">ArrayKernelT</a> completes the kernel build with a specialized version of the garbage collections since the GeoIndices require special handling.</p>
<dl class="section attention"><dt>Attention</dt><dd>Data will be shared with a geometry core when linking a mesh with a OpenSG geometry node using <a class="el" href="a01239.html#a16b8b29bbad427ea962a06fc04f5eb7a" title="Bind a OpenSG geometry to a mesh. ">Kernel_OSG::bind</a>. </dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="af263bcb96eb989660cd802eaf93cd028"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af263bcb96eb989660cd802eaf93cd028">&#9670;&nbsp;</a></span>restore()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename GeoProperty&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t <a class="el" href="a02725.html">OpenMesh::Kernel_OSG::oPropertyT</a>&lt; GeoProperty &gt;::restore </td>
          <td>(</td>
          <td class="paramtype">std::istream &amp;&#160;</td>
          <td class="paramname"><em>_istr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>_swap</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Restore self from a binary block. </p>
<p>Uses <a class="el" href="a02725.html#a76d932e13622eb8a87cfc13058538b53" title="Reserve memory for n elements. ">reserve()</a> to set the size of self before restoring. </p>

<p>Implements <a class="el" href="a02497.html#a0eb66e2547283ca989179d508fbbed87">OpenMesh::BaseProperty</a>.</p>

</div>
</div>
<a id="ac0e7839eeeba0528390ccbe9315dd153"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0e7839eeeba0528390ccbe9315dd153">&#9670;&nbsp;</a></span>set_persistent()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename GeoProperty&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a02725.html">OpenMesh::Kernel_OSG::oPropertyT</a>&lt; GeoProperty &gt;::set_persistent </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>_yn</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enable or disable persistency. </p>
<p>Self must be a named property to enable persistency. </p>

<p>Implements <a class="el" href="a02497.html#aeac2109212f8489104137a03ffee3962">OpenMesh::BaseProperty</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>OpenMesh/Tools/Kernel_OSG/<a class="el" href="a00632_source.html">PropertyT.hh</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<hr>
<address>
<small>
<a href="http://www.rwth-graphics.de" style="text-decoration:none;">
</a>
Project <b>OpenMesh</b>, 
&copy;&nbsp; Computer Graphics Group, RWTH Aachen.
Documentation generated using 
<a class="el" href="http://www.doxygen.org/index.html">
<b>doxygen</b>
</a>.
</small>
</address>
</body>
</html>
